package cn.com.blueInfo.bpm.system.response;

import cn.com.blueInfo.bpm.common.response.BaseVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
* 菜单表 前端视图
* @author suxch
* @since 2025-08-24 01:37:55
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Schema(description = "菜单 前端视图")
public class MenuVO extends BaseVO {

    /** ID */
    @Schema(description = "ID")
    private String id;
    /** 菜单名称 */
    @Schema(description = "菜单名称")
    private String menuName;
    /** 父级菜单ID（0代表一级菜单） */
    @Schema(description = "父级菜单ID（0代表一级菜单）")
    private String parentId;
    /** 前端路由路径 */
    @Schema(description = "前端路由路径")
    private String routePath;
    /** 前端组件路径 */
    @Schema(description = "前端组件路径")
    private String component;
    /** 菜单图标（可选） */
    @Schema(description = "菜单图标（可选）")
    private String icon;
    /** 表单编码 */
    @Schema(description = "表单编码")
    private String formCode;
    /** 菜单类型：1-系统菜单，0-业务菜单 */
    @Schema(description = "菜单类型：1-系统菜单，0-业务菜单")
    private String menuType;
    /** 菜单权限标识 */
    @Schema(description = "菜单权限标识")
    private String permissionKey;

    private List<MenuVO> children;

    private String name;

}